home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 May: Technology Seed / Mac Tech Seed May '96 / Mac Tech Seed May '96.toast / mac / Unity a3c3 / Install System Software / QuickDraw GX / QuickDraw™ GX Disk 1 / QuickDraw™ GX / QuickDraw™ GX.adf / psbt_-28345 < prev    next >
Encoding:
Text File  |  1995-08-28  |  1.5 KB  |  91 lines

  1. Ó/MakeFontClone {
  2. exch
  3. dup length 3 -1 roll add dict begin 
  4. {
  5. 1 index /FID ne 2 index /UniqueID ne and {def} {pop pop} ifelse
  6. } forall
  7. currentdict
  8. end
  9. } Bdef
  10. /MakeFramedFont {
  11. 1 index /FontType get 0 ne { 
  12. exch 2 MakeFontClone
  13. begin 
  14. /PaintType 2 def 
  15. 0 FontMatrix idtransform pop 
  16. /StrokeWidth Xdef
  17. currentdict
  18. end
  19. } { 
  20. exch 
  21. 0 MakeFontClone begin 
  22. FDepVector length array 
  23. FDepVector { 
  24. 3 index 
  25. MakeFramedFont /FDepFramedFont
  26. exch definefont 
  27. 3 copy put pop 
  28. 1 add 
  29. } forall
  30. pop 
  31. /FDepVector Xdef 
  32. pop 
  33. currentdict 
  34. end
  35. } ifelse
  36. } Bdef
  37. /MakeVerticalFont {
  38. dup /WMode known {0} {1} ifelse MakeFontClone
  39. dup begin
  40. /WMode 1 def
  41. end
  42. } Bdef
  43. /BoldBuildChar {
  44. exch begin
  45. theChar 0 3 -1 roll put 
  46. baseFontDict setfont
  47. theChar stringwidth 
  48. dup 0 ne {yBold add} if 
  49. exch
  50. dup 0 ne {xBold add} if 
  51. exch
  52. gsave
  53. newpath
  54. 0 0 moveto
  55. theChar false GXCharPath 
  56. gsave
  57. xBold 2 mul yBold 2 mul scale 1 setlinewidth strokepath
  58. pathbbox
  59. grestore
  60. grestore
  61. setcachedevice
  62. newpath
  63. 0 0 moveto theChar true GXCharPath
  64. currentlinewidth 
  65. xBold 2 mul 
  66. yBold 2 mul
  67. scale
  68. 1 setlinewidth 
  69. CharPathCount 0 eq {stroke} {strokepath} ifelse
  70. 1 xBold 2 mul div 1 yBold 2 mul div scale 
  71. setlinewidth 
  72. 0 0 moveto
  73. theChar CharPathCount 0 eq {show} {true charpath} ifelse
  74. end
  75. } Bdef
  76. /MakeBoldFont {
  77. 20 dict dup begin 
  78. 4 1 roll 
  79. /yBold Xdef 
  80. /xBold Xdef
  81. /baseFontDict Xdef 
  82. /theChar 1 string def 
  83. baseFontDict /Encoding get /Encoding Xdef 
  84. /FontType 3 def 
  85. /FontMatrix [1 0 0 1 0 0] def 
  86. /FontBBox [0 0 0 0] def 
  87. /BuildChar /BoldBuildChar load def
  88. end
  89. } Bdef
  90.